package day14;

import com.sun.xml.internal.ws.addressing.WsaActionUtil;

import java.util.Scanner;

/*
* 一个try 多个catch的组合情况
*
* */
public class Demo5 {
    public static void main(String[] args) {

       try{
           Scanner scanner = new Scanner(System.in);
           System.out.println("输入一个数字");
           int number = scanner.nextInt();

           if(number%2==0){
               int[] arr = {1,3,4};

               System.out.println(arr[5]);
           }else{
               int[] arr = null;
               System.out.println(arr[1]);
           }
           //当出现多个catch时：
           // 1.要求多个catch中声明的异常类型不能相同
           //2.如果多个异常有子父类的关系，那么子类异常要求在上面的catch中处理，父类异常在下面的异常处理
           //3.如果出现了异常会从上到下依次catch，直到异常捕获或者catch执行完
       }catch (NullPointerException e){
           System.out.println("出现了空指针异常");
       }catch (RuntimeException e){
           System.out.println("出现了运行时期异常");
       }catch (Exception e){
           System.out.println("出现了Exception异常");
       }

    }
}
